export default formData => {
  // 搜索配置
  const searchOption = ref({
    formConfig: {
      // 型号ID
      id: {
        label: "型号ID",
      },
      // 型号名称
      name: {
        label: "型号名称",
      },
      // 新增时间
      createTime: {
        label: "新增时间",
        component: "el-date-picker",
        type: "daterange",
        format: "YYYY-MM-DD",
        valueFormat: "YYYY-MM-DD",
      },
      // 编辑时间
      updateTime: {
        label: "编辑时间",
        component: "el-date-picker",
        type: "daterange",
        format: "YYYY-MM-DD",
        valueFormat: "YYYY-MM-DD",
      },
      // 编辑人
      updateName: {
        label: "操作人员",
      },
    },
  });

  // 表格配置
  const tableOption = ref(
    Utils.tools.deleteSearchConfig({
      // 弹窗宽度
      dialogWidth: "30%",
      addTitle: "新增型号",
      editTitle: "编辑型号",
      // 是否显示编辑按钮
      editBtn: false,
      // 是否显示删除按钮
      delBtn: false,

      menuWidth: 170,
      // 对齐方式
      align: "left",
      // 表格配置
      column: {
        // 型号ID
        id: {
          label: "型号ID",
          minWidth: 200,
          display: false,
        },
        // 型号名称
        name: {
          label: "型号名称",
          minWidth: 200,
          display: false,
        },
        // 排列序号
        sortNo: {
          label: "排列序号",
          minWidth: 200,
          display: false,
        },
        // 所属品牌
        brandName: {
          label: "所属品牌",
          minWidth: 200,
          display: false,
        },
        // 新增时间
        createTime: {
          label: "新增时间",
          minWidth: 180,
          display: false,
        },
        // 编辑时间
        updateTime: {
          label: "编辑时间",
          minWidth: 180,
          display: false,
        },
        // 最近编辑人
        updateName: {
          label: "最近编辑人",
          minWidth: 120,
          align: "center",
          display: false,
        },
      },
      // 表单配置
      group: [
        {
          column: {
            // id: {
            //   label: "型号ID",
            //   span: 24,
            //   rules: [{ required: true, message: "请输入型号名称", trigger: "blur" }],
            // },
            name: {
              label: "型号名称",
              placeholder: "请输入型号名称",
              maxlength: 50,
              span: 24,
              rules: [{ required: true, message: "请输入型号名称", trigger: "blur" }],
            },
            sortNo: {
              label: "排列序号",
              placeholder: "请输入排列序号",
              span: 24,
              rules: [
                { required: true, message: "请输入排列序号", trigger: "blur" },
                {
                  validator: (_r, v, cb) => (/^[1-9]\d*$/.test(String(v)) ? cb() : cb(new Error("请输入正整数"))),
                  trigger: "blur",
                },
              ],
            },
            brandId: {
              label: "关联品牌",
              placeholder: "请选择关联品牌",
              span: 24,
              rules: [{ required: true, message: "请选择关联品牌", trigger: "blur" }],
            },
            categories: {
              label: "",
              placeholder: "请选择品牌的类目",
              span: 24,
              rules: [{ required: true, message: "请选择品牌的类目", trigger: "blur" }],
            },
            attributes1: {
              label: "关联属性",
              span: 24,
              // rules: [{ required: true, message: "请选择关联属性", trigger: "blur" }],
            },
            attributes2: {
              label: "",
              span: 24,
              // rules: [{ required: true, message: "请选择关联属性", trigger: "blur" }],
              rules: [
                {
                  validator: (rule, value, callback) => {
                    // console.log("值", formData.value.attributes1, value);
                    if (
                      value &&
                      value.length > 0 &&
                      formData.value.attributes1 &&
                      formData.value.attributes1[0][0] == value[0][0]
                    ) {
                      callback(new Error("两个关联属性不能相同"));
                    } else {
                      callback();
                    }
                  },
                  trigger: "blur",
                },
              ],
            },
          },
        },
      ],
    })
  );

  return { searchOption, tableOption };
};
